/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package Datos;

import java.io.FileOutputStream;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Iterator;
import java.util.List;
import org.jdom.Document;
import org.jdom.Element;
import org.jdom.input.JDOMParseException;
import org.jdom.input.SAXBuilder;
import org.jdom.output.XMLOutputter;
/**
 *
 * @author Rodrigo Uzcátegui
 */
public class CargaGerentes {

    private static String nombreArchivo = "src/Datos/XMLGerente.xml";

//    public static void leerProductosXML(List listaDeGerentes)
//    {
//        try
//        {
//            SAXBuilder builder = new SAXBuilder();
//            try
//            {
//                Document doc = builder.build(nombreArchivo);
//                Element raiz = doc.getRootElement();
//
//                System.out.println(raiz.getAttributeValue("tipo"));
//
//                List losProductos = raiz.getChildren("producto");
//
//                System.out.println("Formada por: " + losProductos.size() + " Productos");
//                System.out.println("------------------");
//
//                Iterator i = losProductos.iterator();
//                while (i.hasNext())
//                {
//                    Element e = (Element) i.next();
//                    Element nombre = e.getChild("nombre");
//                    Element precio = e.getChild("precio");
//                    Element perecedero = e.getChild("perecedero");
//                    Element código = e.getChild("código");
//                    Element descripción = e.getChild("descripción");
//                    Element rubro = e.getChild("rubro");
//                    Element cantidad = e.getChild("cantidad");
//                    Element unidad = e.getChild("unidad");
//                    Element pvp = e.getChild("pvp");
//                    Element fechaCaducidad = e.getChild("fechaCaducidad");
//                    Element bajoRégimenPrecios = e.getChild("bajoRégimenPrecios");
//                    Element oferta = e.getChild("oferta");
//                    Element urlImágen = e.getChild("urlImágen");
//                    Element empaque = e.getChild("empaque");
//                    Element ingredientes = e.getChild("ingredientes");
//                    Element tamaño = e.getChild("tamaño");
//                    Element temperatura = e.getChild("temperatura");
//                    Element fechaElaboración = e.getChild("fechaElaboración");
//                    Element esProductoPropio = e.getChild("esProductoPropio");
//                    Element estatus = e.getChild("estatus");
//
//                    Producto producto = new Producto();
//                    producto.setEstatus('a');
//                    producto.setNombre(nombre.getText());
//                    producto.setDescripción(descripción.getText());
//                    producto.setRubro(rubro.getText());
//                    producto.setURLImágen(urlImágen.getText());
//                    producto.setTamaño(tamaño.getText());
//                    producto.setCódigo(código.getText());
//                    producto.setUnidad(unidad.getText());
//
//                    String[] ingredientesArray = ingredientes.getText().split("/");
//                    producto.setIngredientes(ingredientesArray);
//
//                    producto.setFechaCaducidad(fechaCaducidad.getText());
//                    producto.setFechaElaboración(fechaElaboración.getText());
//
//                    boolean poseeOferta;
//                    float porcentaje;
//                    if(oferta.getText().equals("NO APLICA"))
//                    {
//                        poseeOferta = false;
//                        porcentaje = 0;
//                    }
//                    else
//                    {
//                        poseeOferta = true;
//                        String[] parámetrosArray = oferta.getText().split("/");
//                        String valorPorcentual = parámetrosArray[1];
//                        valorPorcentual = valorPorcentual.replace("%", "");
//                        porcentaje = Float.parseFloat(valorPorcentual);
//                    }
//
//                    producto.setOferta(poseeOferta, porcentaje);
//
//                    producto.setEmpaque(empaque.getText());
//
//                    if(esProductoPropio.getText().equals("No"))
//                        producto.setEsProductoPropio(false);
//                    else
//                        producto.setEsProductoPropio(true);
//
//                    if(perecedero.getText().equals("No"))
//                        producto.setPerecedero(false);
//                    else
//                    {
//                        producto.setPerecedero(true);
//                        float temperaturaFloat = Float.parseFloat(temperatura.getText());
//                        producto.setTemperatura(temperaturaFloat);
//                    }
//
//                    if(bajoRégimenPrecios.getText().equals("No"))
//                        producto.setBajoRégimenPrecios(false);
//                    else
//                        producto.setBajoRégimenPrecios(true);
//
//                    int cantidadInt = Integer.parseInt(cantidad.getText());
//                    producto.setCantidad(cantidadInt);
//
//                    double precioDouble = Double.parseDouble(precio.getText());
//                        producto.setPrecio(precioDouble);
//
//                    double PVPDouble = Double.parseDouble(pvp.getText());
//                    producto.setPVP(PVPDouble);
//
//                    listaDeProductos.add(producto);
//                }
//            }
//            catch(JDOMParseException e)
//            {
//                System.out.println("Archivo vacio");
//            }
//        }
//        catch (Exception e)
//        {
//
//        }
//    }
//
//    public static void guardarTodosLosProductosXML(List listaDeProductos)
//    {
//        Producto productoAGuardar;
//        Element root = new Element("Productos");
//        root.setAttribute("tipo","Lista de Productos");
//        Iterator iterador = listaDeProductos.iterator();
//        while (iterador.hasNext())
//        {
//            Element producto = new Element("producto");
//            productoAGuardar = (Producto) iterador.next();
//
//            Element nombre = new Element("nombre");
//            Element precio = new Element("precio");
//            Element perecedero = new Element("perecedero");
//            Element código = new Element("código");
//            Element descripción = new Element("descripción");
//            Element rubro =  new Element("rubro");
//            Element cantidad =  new Element("cantidad");
//            Element unidad =  new Element("unidad");
//            Element pvp =  new Element("pvp");
//            Element fechaCaducidad = new Element("fechaCaducidad");
//            Element bajoRégimenPrecios =  new Element("bajoRégimenPrecios");
//            Element oferta =  new Element("oferta");
//            Element urlImágen =  new Element("urlImágen");
//            Element empaque =  new Element("empaque");
//            Element ingredientes =  new Element("ingredientes");
//            Element tamaño =  new Element("tamaño");
//            Element temperatura =  new Element("temperatura");
//            Element fechaElaboración =  new Element("fechaElaboración");
//            Element esProductoPropio =  new Element("esProductoPropio");
//
//            nombre.setText(productoAGuardar.getNombre());
//
//            Double precioDouble = productoAGuardar.getPrecio();
//            String precioString = precioDouble.toString();
//            precio.setText(precioString);
//
//            if(productoAGuardar.isPerecedero())
//            {
//                perecedero.setText("Si");
//                Float temperaturaFloat = productoAGuardar.getTemperatura();
//                String temperaturaString = temperaturaFloat.toString();
//                temperatura.setText(temperaturaString);
//            }
//            else
//            {
//                perecedero.setText("No");
//                temperatura.setText("NO APLICA");
//            }
//
//            código.setText(productoAGuardar.getCódigo());
//            descripción.setText(productoAGuardar.getDescripción());
//            rubro.setText(productoAGuardar.getRubro());
//
//            Integer cantidadInteger = productoAGuardar.getCantidad();
//            String cantidadString = cantidadInteger.toString();
//            cantidad.setText(cantidadString);
//
//            unidad.setText(productoAGuardar.getUnidad());
//
//            Double pvpDouble = productoAGuardar.getPVP();
//            String pvpString = pvpDouble.toString();
//            pvp.setText(pvpString);
//
//            Date fechaCaducidadDate = productoAGuardar.getFechaCaducidad();
//            SimpleDateFormat formatoFecha = new SimpleDateFormat("dd-MM-yyyy");
//            String fechaCaducidadString = formatoFecha.format(fechaCaducidadDate);
//            fechaCaducidad.setText(fechaCaducidadString);
//
//            if(productoAGuardar.isBajoRégimenPrecios())
//                bajoRégimenPrecios.setText("Si");
//            else
//                bajoRégimenPrecios.setText("No");
//
//            if(productoAGuardar.getOferta().isPoseeOferta())
//            {
//                String ofertaString = "Si/";
//                Float porcentajeOferta = productoAGuardar.getOferta().getPorcentajeOferta();
//                String porcentajeOfertaString = porcentajeOferta.toString();
//                ofertaString += porcentajeOfertaString + "%";
//                oferta.setText(ofertaString);
//            }
//            else
//            {
//                oferta.setText("NO APLICA");
//            }
//
//            urlImágen.setText(productoAGuardar.getURLImágen());
//
//            Float Altura = productoAGuardar.getEmpaque().getAltura();
//            Float Profundidad = productoAGuardar.getEmpaque().getProfundidad();
//            Float Ancho = productoAGuardar.getEmpaque().getAncho();
//            String alturaString = Altura.toString();
//            String profundidadString = Profundidad.toString();
//            String anchoString = Ancho.toString();
//            String empaqueString = alturaString + "/" + profundidadString + "/" + anchoString;
//            empaque.setText(empaqueString);
//
//            String[] ingredientesStringArray = productoAGuardar.getIngredientes();
//            String cadenaIngredientes = "";
//            for(int i = 0; i<ingredientesStringArray.length; i++)
//            {
//                if(i == ingredientesStringArray.length -1)
//                {
//                    cadenaIngredientes = cadenaIngredientes + ingredientesStringArray[i];
//                    break;
//                }
//                cadenaIngredientes = cadenaIngredientes + ingredientesStringArray[i] + "/";
//
//            }
//            ingredientes.setText(cadenaIngredientes);
//
//            tamaño.setText(productoAGuardar.getTamaño());
//
//            if(productoAGuardar.isEsProductoPropio())
//            {
//                esProductoPropio.setText("Si");
//                Date fechaElaboraciónDate = productoAGuardar.getFechaElaboración();
//                String fechaElaboraciónString = formatoFecha.format(fechaElaboraciónDate);
//                fechaElaboración.setText(fechaElaboraciónString);
//            }
//            else
//            {
//                esProductoPropio.setText("No");
//                fechaElaboración.setText("NO APLICA");
//            }
//
//            producto.addContent(nombre);
//            producto.addContent(precio);
//            producto.addContent(perecedero);
//            producto.addContent(código);
//            producto.addContent(descripción);
//            producto.addContent(rubro);
//            producto.addContent(cantidad);
//            producto.addContent(unidad);
//            producto.addContent(pvp);
//            producto.addContent(fechaCaducidad);
//            producto.addContent(bajoRégimenPrecios);
//            producto.addContent(oferta);
//            producto.addContent(urlImágen);
//            producto.addContent(empaque);
//            producto.addContent(ingredientes);
//            producto.addContent(tamaño);
//            producto.addContent(temperatura);
//            producto.addContent(fechaElaboración);
//            producto.addContent(esProductoPropio);
//
//            root.addContent(producto);
//        }
//        Document doc = new Document(root);
//        try
//        {
//            XMLOutputter out = new XMLOutputter(org.jdom.output.Format.getPrettyFormat());
//            FileOutputStream file = new FileOutputStream(nombreArchivo);
//            out.output(doc,file);
//            file.flush();
//            file.close();
//            out.output(doc,System.out);
//        }
//        catch(Exception e) {}
//    }
}
